In order to control the attitude of a spacecraft, various rotating inertia members can be used. One such inertia member is a control moment gyroscope (CMG). A CMG typically comprises a flywheel with a fixed or variable spin rate mounted to a gimbal assembly. The spin axis of the CMG can be tilted by moving the CMG using the gimbal assembly. This motion produces a gyroscopic torque orthogonal to the spin axis and gimbal axis.
To achieve full attitude control of a spacecraft, a minimum of three CMGs, arranged such that each CMG in the CMG array imparts torque about a linearly independent axis, can be used. Typically, additional CMGs are provided for redundancy purposes and to help avoid singularities. A singularity occurs when the momentum vectors of the CMGs line up such that one or more components of the requested torque can not be provided. The CMGs are moved about their gimbal axes in response to a torque command.
A Jacobian, C, maps the CMG gimbal rates into a three dimensional array torque:Cω=τ  Eqn. 1
where C is a 3×n Jacobian matrix, ω is a n1× array of gimbal rates for the n gimbals, and τ is a 3×1 array of torque components to be imparted to the spacecraft. Using the above equation with a known torque command, τ, the individual gimbal rates for each CMG can be calculated. Using the well-known Moore-Penrose pseudoinverse to invert the Jacobian matrix, a set of possible gimbal rates is:ω=CT(CCT)−1τ  Eqn. 2
As discussed previously, inherent in the use of CMGs is the possibility that the CMGs' momentum vectors may line up in such a way that a singularity condition is reached. Mathematically, singularities can occur when the eigenvalues of CCT approach zero, causing (CCT)−1 to go to infinity. Or, equivalently, singularities occur when the determinant of the matrix CCT is equal to zero (expressed algebraically as det (CCT)=0). In the case of a 3×n matrix C, this is equivalent to saying the rank of the matrix is two or less.
Different approaches have been devised to avoid singularities in the movement of CMGs. In one approach, referred to as the “singularity robust” inverse, to ensure that (CCT)−1 never is 0, (CCT)−1 is replaced by (CCT+εI)−1 where I is the identity matrix and ε is a small number. The use of a positive ε ensures that det (CCT+εI)−1 never becomes 0.
While useful in some instances, a drawback to this approach is that this approach changes the gimbal rate calculation. In the case of the Jacobian, C, the pseudoinverse no longer exactly maps gimbal rates into the commanded torques because of the error it introduces. This resulting error steers the spacecraft in the wrong direction and can introduce significant, undesired torque, especially near a singularity.
A second approach is to limit the CMG array's momentum to a smaller volume within the CMG array's overall momentum envelope. The momentum envelope is the momentum provided in all possible combinations of the CMGs in the CMG array. By operating in a subvolume in which no singularities exist, singularities can be avoided. However, this approach wastes potential momentum and results in systems that are larger and heavier than needed.
As discussed previously, in order to achieve full attitude control of a spacecraft, a minimum of three CMGs are required. In general, a non-symmetrical array of N CMGs, each of whose gimbal angle is independently controlled, has N degrees of freedom. Thus, for an object in orbit, a minimum of three CMGs are needed to provide a full three degrees of freedom. In an exemplary embodiment when exactly three CMGs are used, every point in momentum space in the XYZ coordinate system can be reached by one, and only one set of gimbal angles.
The addition of one or more CMGs adds additional degrees of freedom to the system above what is necessary for full attitude control. This results in what is known as null space. With the addition of null space, each point in momentum space in the XYZ coordinate system can be mapped to an indefinite number of gimbal angles. This can be used to provide a requested torque while also avoiding singularities.
While null space can be used to avoid singularities, null motions use gimbal rate that might otherwise be available for torque production. Therefore, the tasks of avoiding singularities and maximizing available torque can be mutually exclusive.
Accordingly, it is desired to provide a hierarchical strategy for singularity avoidance in arrays of control moment gyroscopes. Furthermore, the desirable features and characteristics of the present invention will be apparent from the subsequent detailed description and the appended claims, taken in conjunction with the accompanying drawings and the foregoing technical field and background.